Sistema de Web Cache
El sistema de Web Cache ayuda a mejorar el desempeño de los portales Web en Cloud-Bricks, ya que disminuye la cantidad de solicitudes directas hacia las bases de datos y hacia los servidores web mediante el uso un proxy reverso.



El sistema de Web cache para permite entonces  reducir el número de las peticiones HTTP que llegan a las máquinas virtuales, permitiendo que las páginas web carguen más rápido. En la pantalla de configuración de un Virtual Host  se puede utilizar la casilla "Activar Cache HTTP" dentro un Location para activar este servicio. El sitio web será cachado según las cabeceras (HTTP Headers) Cache-Control que generen sus páginas.

Configuración de Cache en Virtual Hosts

En la pantalla de gestión de un Virtual Host se pueden configurar diferentes áreas de un mismo web site a través de zonas llamadas Locations. Cuando dentro de un Location se activa la opción de cache HTTP se habilitan dos opciones más, las cuales funcionan de acuerdo a las cabeceras de cache que posea la aplicación.

  • Cache expirado (Stale Cache): Si el proxy reverso tiene en memoria una copia ya expirada de una página (es decir que su tiempo de caché ya venció) y por algún motivo no es posible obtener una copia actualizada (Ejemplo: el web server se cayó), entonces autorizamos al proxy a entregar la copia "vieja" al cliente que la solicite. De esta manera podemos entregar una copia vieja en lugar de no poder entregar nada o generar un error.
  • Cookie no cache: Esta opción es especialmente útil cuando el portal web usa un sistema de autenticación, y mediante una cookie específica indica que el contenido que se genere durante la sesión no debe almacenarse en el caché. Al activar esta opción aparece el campo para ingresar el nombre de la cookie.

Los Headers Cache-control

Los Headers de Cache-Control determinan el tiempo que el sistema de proxy reverso mantendrá una copia de un determinado contenido en su memoria caché. Cuando un navegador solicite dicho contenido el proxy lo entregará directamente desde su memoria sin tener que recurrir nuevamente a la máquina virtual para solicitarlo. Esto último solamente ocurrirá cuando el tiempo de caché configurado por el header Cache-Control haya expirado.

Cache-control en Apache

Apache es uno de los servidores Web más usado, en especial en entornos Linux. Para activar el cache-control se deben cargar los módulos mod_cache, mod_headers y mod_expires. Ingresar al archivo de configuración de apache (http.conf) y descomentar las líneas:

LoadModule expires_module modules/mod_expires.so
LoadModule headers_module modules/mod_headers.so
LoadModule cache_module modules/mod_cache.so

En el mismo archivo de configuración, en la directiva <Directory> agregar los parámetros del módulo de cache:

<IfModule mod_expires.c>
  ExpiresActive On
  ExpiresDefault "access plus 1 seconds"
  ExpiresByType text/html "access plus 1 seconds"
  ExpiresByType image/gif "access plus 120 minutes"
  ExpiresByType image/jpeg "access plus 120 minutes"
  ExpiresByType image/png "access plus 120 minutes"
  ExpiresByType text/css "access plus 60 minutes"
  ExpiresByType text/javascript "access plus 60 minutes"
  ExpiresByType application/x-javascript "access plus 60 minutes"
  ExpiresByType text/xml "access plus 60 minutes"
</IfModule>
Más información sobre Caching en Apache.

Cache-control en PHP

PHP es un lenguaje de desarrollo web muy difundido. Utilizando PHP cada página del site podrá tener un tiempo de Caché diferente. Para generar las cabeceras de cache en PHP se debe usar la función header(). En el siguiente ejemplo la página sería almacenada durante una hora en la memoria caché del proxy reverso:

<?php
Header("Cache-Control: max-age=3600");
//Aqui va el contenido de la página
?>
Más información sobre la función Header de PHP.

Cache-control  en IIS (Windows)

Mediante IIS es posible control la configuración de cache por cada sitio, extensión de archivo o directorio. En el panel de control de IIS ingresar al sitio deseado e ingresar la opción "Output Caching".


Dar clic en la opción "Add".

Editar las opciones de cache.

Borrar Cache Web

Es posible borrar el cache web de un portal, lo cual es útil se requiere visualizar una nueva versión de un contenido de manera inmediata. Así por ejemplo si es necesario visualizar los cambios hechos en un articulo, al borrar el cache los cambios se visualizan rápido. Para borrar el web cache de un portal ingresar en el menú izquierdo a Web System>Web Cache.


Aquí hay dos opciones para borrar el cache:

Borrar cache de disco

Al borrar el cache de disco se borran todo el cache de todos los servidores HTTP configurados, está tarea puede tardar un poco. Está opción es recomendada cuando se hacen cambios generales en todo el portal web, por ejemplo un cambio de plantilla.

Borrar URL del cache

Esta opción es mucha más especifica, y permite eliminar el cache de los objetos de una URL o página en especial. Para eliminar el cache se debe pegar el URL del articulo o página deseada por ejemplo http://wordpress.pruebas.vnat.net/wordpress/2015/12/11/hello-world/. Esta opción es útil cuando se necesita visualizar cambios contenido de un  reciente.


Otros idiomas
[an error occurred while processing this directive]